/*
 *create by guoxingwang 2018-08-01
 * */
 const YN = {
 	//全局路径
// 	baseUrl:'https://wx.ailabcare.com/clinicalmall-web/',
 	baseUrl:'https://api.lis.ulabcare.com/api/common/',
// 	baseUrl:'https://api.lis.ulabcare.com/api/',
 	 /* 
	  * 格式化日期 create by guoxingwang 2018-07-15
	  * type 01 '-' 02 '/' 03  '.'
	  * format  01 年月日  02 年月日 时分 03 年月日时分秒
	  * */
 	formatDate:(date,type,format)=>{
 		let nowDate = new Date(date);
		let y = nowDate.getFullYear();
		let m = nowDate.getMonth() + 1;		    
		m = m<10?"0" + m:m;
		let d = nowDate.getDate();
		d = d<10?"0" + d:d;
		let h = nowDate.getHours();
		h = h<10?"0" + h:h;
		let min = nowDate.getMinutes();
		min = min<10?"0" + min:min;
		let s = nowDate.getSeconds();
		s = s<10?"0" + s:s;
		let separatorType = "";
		switch(type){
			case '01':
				separatorType = '-';
				break;
			case '02':
				separatorType = '/';
				break;
			case '03':
				separatorType = '.';
				break;
			default:
				separatorType = '-';
				break;
		}
		if(format == '01'){//年月日
			return y + separatorType + m + separatorType + d;
		}else if(format == '02'){//年月日 时分
			return y + separatorType + m + separatorType + d + " " + h+ ":"+ min;
		}else if(format == '03'){//年月日  时分秒
			return y + separatorType + m + separatorType + d + " " + h+ ":"+ min + ":" +s;
		}else{
			alert('时间格式输入有误')
		}
 	},
 	 /* MUI的ajax请求
	  * url 请求路径
	  * type 请求方式 支持GET 、POST 
	  * data 请求参数
	  * fun  请求成功的回调函数 把接口获取的 真实数据传递给fun 执行具体业务逻辑
	 */
 	muiAjax:function(url, type, data, fun){
 		mui.ajax(this.baseUrl + url, {
			data: data,
			dataType: 'json', //服务器返回json格式数据
			type: type, //HTTP请求类型
			headers:{'Content-Type': 'application/json'}, 
			timeout: 10000, //超时时间设置为10秒；
			success: (res)=>{
				if(res.code == '000000'){
					fun(res.data);
				}else{
					mui.toast(res.msg)
				}
			},
			error: (xhr, type, errorThrown) =>{
				console.log(type);
				console.log(errorThrown);
			}
		});
 	},
 	/**
 	 * create by guoxingwang 2018-08-07
 	 * mui的日期选择
 	 * z 传入当前组件调用时的this
 	 * JS需引用mui.picker.min.js
 	 * CSS需引用 mui.picker.min.css
 	 * 页面元素添加class btn 自定义属性data-time 
 	 * 	data-time='start'表示开始时间
 	 * 	data-time='end'表示结束时间
 	 * */
 	picker:function(z){
 		let _this = z;
		mui.init();
		var btns = mui('.btn');
			btns.each(function(i, btn) {
				btn.addEventListener('tap', function() {
					var _self = this;
					//console.log(_self.getAttribute('data-time'))
					let whichTime = _self.getAttribute('data-time');
					if(_self.picker) {
						_self.picker.show(function(rs) {
							console.log('选择结果: ' + rs.text);
							whichTime == 'start' ? _this.start = YN.formatDate(rs.text, '01', '01') : _this.end = YN.formatDate(rs.text, '01', '01');
//							_this.getSaleData();
							_self.picker.dispose();
							_self.picker = null;
						});
					} else {
						var optionsJson = this.getAttribute('data-options') || '{}';
						var options = JSON.parse(optionsJson);
						_self.picker = new mui.DtPicker(options);
						_self.picker.show(function(rs) {
							whichTime == 'start' ? _this.start= YN.formatDate(rs.text, '01', '01') : _this.end = YN.formatDate(rs.text, '01', '01');
	//						_this.getSaleData();
							_self.picker.dispose();
							_self.picker = null;
						});
					}
				}, false);
			});
 	},
 	/**
 	 * creat by guoxingwang 2018-08-07
 	 * 比较2个时间的大小，以确保用户选择的结束时间大于开始时间
 	 * beginDate 开始时间
 	 * endDate   结束时间 格式为 YYYY-MM-DD
 	 * 
 	 * */
 	compareDate:(beginDate,endDate)=>{
		let d1 = new Date(beginDate.replace(/\-/g, "\/"));  
		let d2 = new Date(endDate.replace(/\-/g, "\/"));  
		  
		  if(beginDate!=""&&endDate!=""&&d1 >=d2){
		  	mui.alert("开始时间不能大于结束时间！");  
		  	return false;  
		  }
 	},
 	wxConfig:(url,jsApi)=>{
		YN.muiAjax('wxApp/smartlis/getWxConfig','get',{
				url:url
			},function(res){
				wx.config({
					appId: res.appId, 
					timestamp: res.timesTamp, 
					nonceStr: res.nonceStr, 
					signature: res.signature,
					jsApiList: jsApi
				});
			})
	},
 };



//*********Vue 过滤器 --start-- **********************************************************************//
/* 
  * Vue 过滤器
  * 格式化日期 create by guoxingwang 2018-07-15
  * edit 2018-08-01
  * type 01 '-' 02 '/' 03  '.'
  * format  01 年月日  02 年月日 时分 03 年月日时分秒
  * */
Vue.filter('formatDate',YN.formatDate);
/*
 *Vue 过滤器 create by guoxingwang 2018-07-31 
 *(01已下单，02已收费，03已采样，04已接收，05送检中，06检验中，07已报告,08退单申请,09已退单，10已取消)
 * 订单状态
 * */
Vue.filter('formatState',function(state){
	switch(state){
		case '01':
			return '已下单';
			break;
		case '02':
			return '已收费';
			break;
		case '03':
			return '已采样';
			break;
		case '04':
			return '已接收';
			break;
		case '05':
			return '送检中';
			break;
		case '06':
			return '检验中';
			break;
		case '07':
			return '已报告';
			break;
		case '08':
			return '退单申请';
			break;
		case '09':
			return '已退单';
			break;
		case '10':
			return '已取消';
			break;
		default:
			return "未知状态";
			break;
	}
})
/**
 * Vue 过滤器
 * 格式化 性别 create by guoxingwang 2018-08-06
 * */
Vue.filter('formatSex',function(state){
	switch(state){
		case '0':
			return '女';
			break;
		case '1':
			return '男';
			break;
		default:
			return "未知";
			break;
	}
})
/**
 * Vue 过滤器
 * 格式化 婚否 create by guoxingwang 2018-08-06
 * */
Vue.filter('formatMarital',function(state){
	switch(state){
		case '0':
			return '未婚';
			break;
		case '1':
			return '已婚';
			break;
		case '2':
			return '离异';
			break;
		default:
			return "未知";
			break;
	}
})
/**
 * Vue 过滤器
 * 格式化 支付方式 create by guoxingwang 2018-08-06
 * 00现金支付，01微信扫码支付，02支付宝，03银联，04微信公众号支付，05医保支付，99组合支付
 * */
Vue.filter('formatPay',function(state){
	switch(state){
		case '00':
			return '现金支付';
			break;
		case '01':
			return '微信扫码支付';
			break;
		case '02':
			return '支付宝';
			break;
		case '03':
			return '银联';
			break;
		case '04':
			return '微信公众号支付';
			break;
		case '05':
			return '医保支付';
			break;
		case '99':
			return '组合支付';
			break;
		default:
			return "未知";
			break;
	}
})
//*********Vue 过滤器 --end-- **********************************************************************//
//*********ECharts 图表 --start---- *****************************************************//
const ynEchart = {
	/**
	 * 饼图 create by guoxingwang 2018-08-06
	 * dom  dom元素
	 * title 图表名称
	 * lengData 图例名称
	 * realData 图表数据
	 * */
	pie:(dom,title,lengData,realData)=>{
		let myCharts = echarts.init(dom,'pieColor');
		let option = {
				tooltip: {
					trigger: 'item',
					formatter: "{a} <br/>{b}: {c} ({d}%)"
				},
				title:{
					text:title,
					top:'15',
					left:'50'
				},
				legend: {
					orient: 'vertical',
					x: 'right',
					top:'15',
					data:lengData
				},
				series: [
					{
					name:'数据',
					type:'pie',
					radius: ['50%', '70%'],
					center:['30%','60%'],
					avoidLabelOverlap: false,
					label: {
						normal: {
							show: true,
							position: 'inner',
							formatter: '{c}',
						},
						emphasis: {
							show: true,
							textStyle: {
							    fontSize: '18',
							    fontWeight: 'bold'
							}
						}
					},
					labelLine: {
						normal: {
							show: false
						}
					},
					data:realData
					}
				]
			};
		myCharts.setOption(option);
	},
	/**
	 * 双坐标轴折线图 create by guoxingwang 2017-08-07
	 * dom DOM元素
	 * legendData 图例
	 * xData      X轴数据
	 * yData0	  Y轴数据 对应legendData的第一个系列的数据
	 * yData1     Y轴数据 对应legendData的第二个系列的数据
	 * */
	line:function(dom,legendData,xData,yData0,yData1){
		var myChart = echarts.init(dom,'mycolor');
		var option = {
			grid:{
				bottom:20
			},
			tooltip: {
				trigger: 'axis'
			},
			legend: {
				data:legendData
			},
			xAxis: [
				{
					type: 'category',
					boundaryGap: false,
					data:xData
				}
			],
			yAxis: [
				{
					ype: 'value',
					scale: true,
					name:legendData[1],
					boundaryGap: [0.2, 0.2]
				},
				{
					type: 'value',
					scale: true,
					name: legendData[0],
					boundaryGap: [0.2, 0.2]
				}
			],
			series: [
				{
					name:legendData[0],
					type:'line',
					yAxisIndex: 1,
					data:yData0
				},
				{
					name:legendData[1],
					type:'line',
					data:yData1
				}
			]
		};
		myChart.setOption(option);
	}
}

//*********ECharts 图表 --end---- *****************************************************//

